package com.zw.system.service;/*
 *@program:java-cloud-prevalence
 *@author:
 *@Time: 2022/12/4  15:41
 *@description: SysRoleService业务接口
 */

import com.baomidou.mybatisplus.extension.service.IService;
import com.zw.object.result.Result;
import com.zw.object.system.SysRole;
import com.zw.object.vo.SysRoleQueryVo;

import java.util.List;

public interface SysRoleService extends IService<SysRole> {

    /**
     * 查询所有角色业务
     * @return
     */
    Result<List<SysRole>> findAll();

    /**
     * 逻辑删除业务
     * @param id Role id
     * @return Result
     */
    Result remove(Long id);

    /**
     * 件分页查询业务
     * @param page 当前页
     * @param limit 每页记录数
     * @param sysRoleQueryVo SysRole Vo
     * @return Result
     */
    Result findPageByRole(Long page, Long limit, SysRoleQueryVo sysRoleQueryVo);

    /**
     * 添加角色业务
     * @param sysRole 参数实体类
     * @return Result
     */
    Result saveSysRole(SysRole sysRole);

    /**
     * 根绝id查询业务
     * @param id id
     * @return Result<SysRole>
     */
    Result<SysRole> findSysRoleById(String id);

    /**
     * 修改Role业务
     * @param sysRole 参数实体类对象
     * @return Result
     */
    Result updateRoleById(SysRole sysRole);

    /**
     * 根据id批量删除业务
     * @param ids id集合
     * @return Result
     */
    Result batchRemove(List<Long> ids);
}
